package com.shuke.medical.insure.model.vo;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;

/***
 * @title ChsPayOrderSettleAccountsVO
 * @description: 医保订单结算结果查询
 * @author woo hua
 * @version 1.0.0
 * @create 2023/4/7 15:41
 **/
@Data
@NoArgsConstructor
@ApiModel(value = "医保订单结算结果查询对象")
public class ChsPayOrderSettleAccountsVO {

        @ApiModelProperty("订单状态")
        private String ordStas;
        @ApiModelProperty("支付订单号")
        private String payOrdId;
        @ApiModelProperty("回调类型")
        private String callType;
        @ApiModelProperty("医院订单号")
        private String medOrgOrd;
        @ApiModelProperty("交易时间")
        private String traceTime;
        @ApiModelProperty("两定机构编号")
        private String orgCodg;
        @ApiModelProperty("两定机构名称")
        private String orgName;
        @ApiModelProperty("结算类型")
        private String setlType;
        @ApiModelProperty("费用总金额")
        private BigDecimal feeSumamt;
        @ApiModelProperty("现金支付")
        private BigDecimal ownPayAmt;
        @ApiModelProperty("个人账户支付")
        private BigDecimal psnAcctPay;
        @ApiModelProperty("医保基金支付")
        private BigDecimal fundPay;
        @ApiModelProperty("用于院内结算失败对医保的冲正授权")
        private String revsToken;
        @ApiModelProperty("医保扩展数据")
        private ExtData extData;
        @ApiModelProperty("住院押金")
        private BigDecimal deposit;
        @ApiModelProperty("医保收费时间")
        private String hiChrgTime;
        @ApiModelProperty("医保交易流水号")
        private String hiDocSn;
        @ApiModelProperty("医保挂号流水号")
        private String hiRgstSn;
        @ApiModelProperty("电子凭证码值")
        private String ecCode;

    @Data
    @NoArgsConstructor
    @ApiModel("输出 - extData")
    public static class ExtData {
        @ApiModelProperty("实账支付流水号")
        private String psnPaySn;
    }
}
